package com.yueyang.sojourn.server.model.po;

import lombok.Data;

import java.math.BigDecimal;
import java.util.Date;

/**
 *
 * 交易
 * @author Andy.yang
 * @version v1
 * @summary
 * @Copyright (c) 2019, YueYang Group All Rights Reserved.
 * @since 2020/3/23
 */
@Data
public class SojournTransaction {

    /**
     * 主键id
     */
    private Long id;

    /**
     * 1: 微信、2：支付宝
     */
    private Integer channelType;

    /**
     * 付款方：类型-用户、商户支付渠道
     */
    private String payerType;

    /**
     * 付款方：id - 用户id,渠道id
     */
    private Long payerId;

    /**
     * 付款方：账户名、姓名、商户名
     */
    private String payerName;
    /**
     * 付款方：在第三方支付系统中的账号
     */
    private String payerThirdNo;

    /**收款方：类型-用户、商户、平台**/
    private String remitteeType;

    /**收款方：id - 用户id,商户id**/
    private Long remitteeId;

    /**收款方：账户名、姓名、商户名**/
    private String remitteeName;
    /**
     * 收款方：在第三方支付系统中的账号
     */
    private String remitteeThirdNo;

    /**交易类型：付款、退款**/
    private Integer type;

    /**订单序列号**/
    private String orderSn;

    /**退款单号**/
    private String refundSn;

    /**第三方支付系统：预支付id**/
    private String thirdPrepayId;

    /**第三方支付系统：交易id**/
    private String thirdTransId;

    /**交易描述**/
    private String desc;

    /**总金额**/
    private Integer totalFee;

    /**退款时：关联的付款交易id**/
    private Long relationId;

    /**
     * 订单状态
     */
    private Integer status;

    /**
     * 乐观锁
     */
    private Long version;
    /**
     * 创建人
     */
    private Long creator;

    /**
     * 创建时间
     */
    private Date createdTime;

    /**
     * 更新人
     */
    private Long updator;

    /**
     * 更新时间
     */
    private Date updatedTime;
}
